package cqrtplm.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * DSPF_Status_ModuleItemSub
 * @TableName DSPF_Status_ModuleItemSub
 */
@TableName(value ="DSPF_Status_ModuleItemSub")
@Data
@JsonInclude(JsonInclude.Include.ALWAYS)
@AllArgsConstructor
@NoArgsConstructor
public class DspfStatusModuleitemsubDO {

    /**
     * SID
     */
    private String sid;

    /**
     * ItemID
     */
    private String itemId;

    /**
     * ModuleID
     */
    private String moduleId;

    /**
     * DetailID
     */
    private String detailId;

    /**
     * 类型 0物料描述 1固定字典 2认证
     */
    private Integer subType;

    /**
     * DataItemCode
     */
    private String dataItemCode;

    /**
     * PartsCode
     */
    private String partsCode;

    /**
     * PartsName
     */
    private String partsName;

    /**
     * DescrCode
     */
    private String descrCode;

    /**
     * DescrName
     */
    private String descrName;

    /**
     * IsOptional
     */
    private Integer isOptional;

    /**
     * SubName
     */
    private String subName;

    /**
     * DescrTypeName
     */
    private String descrTypename;

    /**
     * DescrTypeCode
     */
    private String descrTypeCode;

    /**
     * DescrValueCode
     */
    private String descrValueCode;

    /**
     * 产品类别 0动力 1终端
     */
    private Integer productClass;

    /**
     * DefaultValue
     */
    private String defaultValue;

    /**
     * DefaultText
     */
    private String defaultText;

    /**
     * SortOrder
     */
    private Integer sortOrder;

    /**
     * NotFromBom
     */
    private Integer notFromBom;

    /**
     * F_SortCode - 排序码
     */
    private Integer fSortCode;

    /**
     * F_DeleteMark - 删除标记
     */
    private Integer fDeleteMark;

    /**
     * F_EnabledMark - 有效标志
     */
    private Integer fEnabledMark;

    /**
     * F_Description - 备注
     */
    private String fDescription;

    /**
     * F_CreateDate - 创建日期
     */
    private Date fCreateDate;

    /**
     * F_CreateUserId - 创建用户主键
     */
    private String fCreateUserid;

    /**
     * F_CreateUserName - 创建用户
     */
    private String fCreateUserName;

    /**
     * F_ModifyDate - 修改日期
     */
    private Date fModifyDate;

    /**
     * F_ModifyUserId - 修改用户主键
     */
    private String fModifyUserId;

    /**
     * F_ModifyUserName - 修改用户
     */
    private String fModifyUserName;

    /**
     * FixValue
     */
    private String fixValue;

    /**
     * FixText
     */
    private String fixText;

    /**
     * SourceRange
     */
    private Integer sourceRange;

    /**
     * EditByXMZ - 项目组是否可编辑 1是
     */
    private Integer editByXMZ;

    /**
     * EditByZTS - 状态室是否可编辑 1是
     */
    private Integer editByZTS;

    /**
     * F_DeleteDate - 删除时间
     */
    private Date fDeleteDate;

    /**
     * SubProjectLeader - 子项负责人
     */
    private String subProjectLeader;

    /**
     * EditByPack - 包装组是否可编辑 1是
     */
    private Integer editByPack;

    /**
     * EditByDecal - 贴花组是否可编辑 1是
     */
    private Integer editByDecal;

    /**
     * EditByElectric - 电气组是否可编辑 1是
     */
    private Integer editByElectric;

    /**
     * EditByDL - 动力是否可编辑 1是
     */
    private Integer editByDL;

    /**
     * EditByJZ - 机组是否可编辑 1是
     */
    private Integer editByJZ;

    /**
     * LinkPartCodes
     */
    private String linkPartCodes;

    /**
     * MapperName - 控制表映射字段名
     */
    private String mapperName;

//    private String attributeIds;

    /**
     * is_Describe 是否拼接描述
     */
    private Integer isDescribe;

    /**
     * 短描述
     */
    private String shortDescription;
    /**
     * 当类型为属性拼接和物料类型时 会使用该字段判断是图样代号还是物料码
     * 0图样代号    1物料码
     */
    private Integer iscode;

    /**
     * 全描述拼接的顺序
     */
    private Integer descriptionsort;


    public DspfStatusModuleitemsubDO(Integer subType, String moduleId, String itemId, String sid, String descrCode,
                                     String descrName, Integer isOptional, Integer productClass, Integer sortOrder,
                                     Integer notFromBom, Integer fDeleteMark, Integer fEnabledMark, Date fCreateDate,
                                     String fCreateUserid, String fCreateUserName, String fixValue, Integer sourceRange,
                                     Integer editByXMZ, Integer editByZTS, String subProjectLeader, Integer editByPack,
                                     Integer editByDecal, Integer editByElectric, Integer editByDL, Integer editByJZ,
                                     String mapperName) {
        this.subType = subType;
        this.moduleId = moduleId;
        this.itemId = itemId;
        this.sid = sid;
        this.descrCode = descrCode;
        this.descrName = descrName;
        this.isOptional = isOptional;
        this.productClass = productClass;
        this.sortOrder = sortOrder;
        this.notFromBom = notFromBom;
        this.fDeleteMark = fDeleteMark;
        this.fEnabledMark = fEnabledMark;
        this.fCreateDate = fCreateDate;
        this.fCreateUserid = fCreateUserid;
        this.fCreateUserName = fCreateUserName;
        this.fixValue = fixValue;
        this.sourceRange = sourceRange;
        this.editByXMZ = editByXMZ;
        this.editByZTS = editByZTS;
        this.subProjectLeader = subProjectLeader;
        this.editByPack = editByPack;
        this.editByDecal = editByDecal;
        this.editByElectric = editByElectric;
        this.editByDL = editByDL;
        this.editByJZ = editByJZ;
        this.mapperName = mapperName;
    }

    public DspfStatusModuleitemsubDO(String moduleId) {
        this.moduleId = moduleId;
    }
}



